/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package model.dao;

import com.mysql.jdbc.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import model.bean.BeanProfesor;
import model.daobase.DBase;

/**
 *
 * @author Jesus
 */
public class DaoProfesor extends DBase {
    
     public ArrayList<BeanProfesor> lista() {

        this.init_mysql();
        PreparedStatement pstmt = null;
        ResultSet res = null;
        ArrayList<BeanProfesor> listaProfesor = new ArrayList<BeanProfesor>();

        try {

            String query = "SELECT * FROM profesor";

           pstmt = (PreparedStatement) conn.prepareStatement(query);
            res = pstmt.executeQuery();
            BeanProfesor profesor;
            while (res.next())
            {
               profesor = new BeanProfesor();
               
               profesor.setIdprofesor(res.getInt(1));
               profesor.setNombre(res.getString(2));
               profesor.setApellido(res.getString(3));
                
               listaProfesor.add(profesor);
            }

            res.close();
            pstmt.close();
            conn.close();

        } catch (SQLException e1) {
            e1.getMessage();
        }

        return listaProfesor;

    }
     
      public BeanProfesor get(int id) {

        this.init_mysql();
        PreparedStatement pstmt = null;
        ResultSet res = null;
        BeanProfesor profesor = new BeanProfesor();

        try {

            String query = "SELECT * FROM profesor WHERE idprofesor=" + id;

            pstmt = (PreparedStatement) conn.prepareStatement(query);
            res = pstmt.executeQuery();

            while (res.next()) {
                
                profesor.setIdprofesor(res.getInt(1));
                profesor.setNombre(res.getString(2));
                profesor.setApellido(res.getString(3));
                
              
                  
            }

            res.close();
            pstmt.close();
            conn.close();

        } catch (SQLException e1) {
            e1.getMessage();
        }

        return profesor;

    }
      
        public void update(BeanProfesor profesor) {

        this.init_mysql();
        PreparedStatement pstmt = null;
        ResultSet res = null;

        try {

            String query = "UPDATE profesor SET nombre='" + profesor.getNombre() + "', apellido='" + profesor.getApellido() +"' WHERE idprofesor=" + profesor.getIdprofesor();
            pstmt = (PreparedStatement) conn.prepareStatement(query);
            pstmt.executeUpdate();
            pstmt.close();
            conn.close();

        } catch (SQLException e1) {
            e1.getMessage();
        }

    }

    public void insert(BeanProfesor profesor) {

        this.init_mysql();
        PreparedStatement pstmt = null;
        ResultSet res = null;

        try {

            String query = "INSERT into profesor(nombre,apellido) values('" + profesor.getNombre() + "','" + profesor.getApellido() + "')";
            pstmt = (PreparedStatement) conn.prepareStatement(query);
            pstmt.executeUpdate();
            pstmt.close();
            conn.close();

        } catch (SQLException e1) {
            e1.getMessage();
        }

    }

    public void delete(int id) {

        this.init_mysql();
        PreparedStatement pstmt = null;
        ResultSet res = null;

        try {

            String query = "DELETE FROM profesor WHERE idprofesor=" + id;
            pstmt = (PreparedStatement) conn.prepareStatement(query);
            pstmt.executeUpdate();
            pstmt.close();
            conn.close();

        } catch (SQLException e1) {
            e1.getMessage();
        }

    }
    
}
